Database Repository Installation

The database repository is a critical element of the Pyramid application - housing all the content and settings in the system.

There are several options for deploying the repository:

  • New Internal Repository - this is the default option and is a good solution for POCs and small deployments on a single server. This option uses an internal installation of PostgreSQL, installed locally on the server.
  • New Remote Repository - this option is best used for all NEW deployments (other than small). It allows for the repository to be deployed into an existing database server instance already hosted by the customer (or in the cloud). Usually such instances are well resourced, have back-up and fail-over processes in place and are monitored for up-time and performance. Options for alternative databases include PostgreSQL, MS SQL Server, and Oracle. See below for database location choices: Native or cloud hosted "RDS".
  • Current Remote Repository - this option is used when adding a new server to an EXISTING cluster of Pyramid servers. It is used by providing the details of the existing repository database in that cluster. See Multi-Server Repository for more details.
  • Reuse Preexisting Repository - this option is used for upgrade testing and disaster recovery. It is used by providing the details of an existing repository database. Use this option to attach the first new installation to that repository. All subsequent servers should then use the "Current Repository" approach described above as normal. See Recovery for more details on this option.

Standard Deployments

By default, the connection to the repository is not encrypted. You can encrypt this connection by selecting the appropriate options as part of the installation. For more information, see Encrypting Connections.

PostgreSQL Repository

For PostgreSQL, provide the server host name, the port of the instance as well as the user name and password that will create the new database and perform administrative tasks.

Local Option

If the local repository option is chosen, the settings are typically:

  • server: localhost
  • port: 12130
  • username: pyramid
  • password: XXXXXXXXXXX
  • database: pyramidMMMMMM

Prior to version 2020.15, the password for the internal PostgreSQL instance is "pyramid". From version 2020.15 and above, the password for the internal PostgreSQL instance will be the name of the database (which is "pyramid" followed by an alphanumeric sequence) with an exclamation mark "!" after the word "pyramid".

To get the password, you need to open the config.ini file and find the database name. The password will then be "pyramid!alphanumericsequence". For instance, if the database name is "pyramid123blt", the password will be "pyramid!123blt".

Microsoft SQL Server Repository

For MS SQL Server, provide the server host name together with the instance name in the host box (e.g. server\instance). If you choose not to provide the instance name you must provide the port of the instance (typically 1433 for the default). Do not supply both.

The SQL authentication user name and password of a user is also required. This account provided should have sufficient privileges to create a database and perform administrative tasks.

Oracle Repository

For Oracle, provide the server host name, the port of the instance (typically 1521) and the service name (SID cannot be used). You need to provide a system user account (and password) that will allow the installer to create the new Pyramid schema (or user) on the designated server. The user or schema, itself, needs its own password.

Native vs RDS Remote Locations

When choosing the location for a 'remote' repository, admins can elect to use a native installation of the database technology or one hosted in the cloud ("RDS").

If you are using RDS, you need to create the empty database and grant appropriate permissions before you install Pyramid. Permissions are granted by running the following, one after the other, with <USERNAME> replaced with the name of the database:

GRANT CONNECT, RESOURCE, SELECT_CATALOG_ROLE, CREATE VIEW TO <USERNAME>

GRANT UNLIMITED TABLESPACE TO <USERNAME>;

If you do not set these permissions, the Pyramid installer will fail in the validation phase (before the installation begins).

Multi-Server Repository

When installing for a multi-server cluster deployment, the first installation should use the "New" remote server repository option. This will create the initial instance of the database to be used for subsequent installations. In the next and subsequent server installations of the cluster, choose the "CURRENT" option and set the repository settings to the ones used in the previous initial installation.

Using an old database or starting with the "CURRENT" option will create errors in a new installation. Further, using different databases for each server in the cluster will not con-join each of the nodes into the same, single cluster.

Resetting the Database Password

Use the System Maintenance Tools to change the database repository password in the even the database password needs to be reset.